Three dimension (3D) measuring technology is widely used in various industries to measure the coordinates of the surface of a 3D object. There are different approaches used for measuring the 3D shapes of different objects. For example, a coordinate measuring machine (CMM) is a 3D device for measuring the physical geometrical characteristics of an object. Laser point/line scanner is another example of a 3D measuring device. However, these 3D measuring devices are usually large in size and are not suitable to be used in living objects.
Another approach is to apply computer vision/image processing techniques to tackle this problem. In this so called ‘structured light technique’, a light pattern is emitted onto the object, a camera or light sensing device is positioned nearby to capture the image of the light pattern after it is reflected by the object. The captured two dimensional (2D) image is a distorted version of the original light pattern. The distortion is caused by the 3D surface of the object. When the coordinates of the light source and the camera positions are known, the surface coordinates of the 3D object can be readily computed based on the distorted 2D light pattern.
Earlier systems make use of a light pattern comprising alternating black and white stripes. In order to achieve high resolution, the width of each black or white stripe needs to be small, which means that there are many black and white stripes in the light pattern. However, due to imperfection of edge detection in image processing, the potential high curvature of the 3D object surface, and other system noises, the system may not reliably detect the black and white lines of the reflected 2D image. In practice, some edge points could be missed and other edge points could be falsely assigned to the wrong edge lines. Such false association introduces gross errors in 3D measurement. One approach to alleviate this problem is to project a sequence of black-and-white-stripe light patterns onto the object as shown in FIG. 1. The first light pattern 2 has only one white and one black stripe. Then progressively more and more white and black stripes are projected in subsequent light patterns 4. The drawback of this approach is that multiple steps of image projection, capturing and analysis are needed, rendering it time consuming in processing.
Another approach is to use color stripes to construct the light pattern. This alleviates the edge line association problem as mentioned above. However, the color stripes of the captured image depend not only on the color stripes of the light pattern that is to project onto the object, but also on the color absorption characteristic of the 3D object surface. For example, if there is a wide red color patch somewhere on the surface of the 3D object, the edge line boundary of a red stripe shone on that patch would hardly be detectable. Hence, there is a need to develop a new light pattern and its associated detection algorithm for providing fast and reliable 3D surface measurement.